本文介绍了模拟退火、粒子群优化、遗传算法等常见的启发式优化算法。
最近和 @Rockchin 合资购买了一个位于日本东京的 4C8G 的高性能 VPS,用于部署一些服务。在这里记录一下自己搭建邮件服务器的过程。
0x01. SMTP、IMAP、POP3 协议
SMTP(Simple Mail Transfer Protocol)是用于发送邮件的位于应用层的协议,使用 TCP 协议作为传输层协议,端口号为 25。SMTP 协议规定了很多命令,它告诉客户端或服务器要采取什么操作及如何处理任何伴随的数据。比如
HELO:客户端向服务器标识自己
MAIL FROM:指定邮件的发件人
RCPT TO:指定邮件的收件人
DATA:发送邮件内容
QUIT:结束会话
客户端与服务器建立 TCP 连接后,客户端会首先发送一条 HELO 命令,然后服务器会返回一条 250 OK 命令,表示连接成功。可以使用 telnet 命令测试 SMTP 服务器是否正常工作:
1telnet smtp.idoknow.top 25
连接成功后,输入 HELO 命令。
1234567Trying 45.137.180.174...Connected to smtp.idokn...
前言
GitHub Workflow 是一个非常强大的工具,可以帮助我们自动化很多工作,它能够在检测到我们推送的提交、合并请求等事件时,自动新建一个虚机来执行我们预先编写好的脚本。
我的很多项目都使用了这个功能来帮助我执行自动化流程,比如这篇博客的渲染就是由 GitHub Workflow 来完成的。在我推送 Markdown 格式的博客内容后,它会首先签出到我最新的提交,然后调用 hugo 的工具链来渲染成 HTML 页面,然后将打包好的文件夹压缩,通过 scp 指令发送到我位于日本东京的生产服务器 tokyo-neko 上,再执行相关操作后,网站上就会显示我写的博文——整个流程小于 1 分钟。而我要做的,只是专注于写作,然后 git push。
此外,我使用它来自动发布 hugging-face-api的新版本到 PyPi 平台上,以及自动构建 AstrBot Docker 镜像。
而本篇文章要记录的,就是由于对 GitHub Workflow 中某个插件的不熟悉导致的 AstrBot Docker 端更新业务的大规模异常。
问题的发现
起因是群里有部分用户反馈 Docker...
累与矛盾
过去从没有哪一年能如今年一样,如此迫切地想要写一篇文章来记录自己的这一年。
如果要让我为我的 2023 经历做一个关键词总结,”忙“和”矛盾“。再贴切不过
2023,是近些年来世界经济动荡最为明显的一年,
是国内实体经济萎靡的一年,
是大裁员的一年,
也是我心路历程变化最大、最矛盾的一年。
曾在大一信誓旦旦地说毕业直接找工作的我,
到了大二,由于成绩还算可观,慢慢改变了想法。
我自认为是一个很容易受他人影响的人,
大三前的暑假,看见周围的人开始为工作而准备面试,自己也心动了,慢慢地,就产生了对未来职业的焦虑。
有同学曾问过我对未来的打算,我只好尴尬地回答:先”并行“发展吧。
然而这分明就是两条非常矛盾的道路。
大三的课很多,如果要兼顾课内成绩的同时还要为工作而考虑,时间将会非常紧。
从七月底开始,咬着牙坚持了小半年,竟真给我坚持了下来。
这小半年,我需要同时兼顾学业、实习、竞赛、开源项目,以及学校实验室的一些项目。
只能说相当累。
也不知道哪天晚上喝多了,竟做出这么个玩意儿:
两次实习经历也让我深刻意识到了互联网企业是普遍存在加班现象的。
尤其是小红书,大家默认都加班...